package com.feifan.oa.mapper;

import com.feifan.oa.domain.Leave;

import java.util.List;

/**
 * 请假Mapper接口
 * 
 * @author 非凡
 * @date 2020-07-04
 */
public interface LeaveMapper 
{
    /**
     * 查询请假
     * 
     * @param id 请假ID
     * @return 请假
     */
    public Leave selectLeaveById(Long id);

    /**
     * 查询请假列表
     * 
     * @param leave 请假
     * @return 请假集合
     */
    public List<Leave> selectLeaveList(Leave leave);

    /**
     * 根据用户查询已审批的请假单
     * @param uId 用户id
     * @return 请假集合
     */
    List<Leave> selectLeaveListByUId(Long uId);

    /**
     * 新增请假
     * 
     * @param leave 请假
     * @return 结果
     */
    public int insertLeave(Leave leave);

    /**
     * 修改请假
     * 
     * @param leave 请假
     * @return 结果
     */
    public int updateLeave(Leave leave);

    /**
     * 删除请假
     * 
     * @param id 请假ID
     * @return 结果
     */
    public int deleteLeaveById(Long id);

    /**
     * 批量删除请假
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteLeaveByIds(String[] ids);

}
